package com.yf.exam.modules.paper.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yf.exam.core.utils.excel.annotation.ExcelField;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
public class SysExamApplyExportDTO implements Serializable {

    /**
     * 真实姓名
     */
    @ExcelField(title = "真实姓名", align = 2, sort = 1)
    private String realName;

    /**
     * 手机号码
     */
    @ExcelField(title = "手机号码", align = 2, sort = 2)
    private String phone;

    /**
     * 单位
     */
    @ExcelField(title = "单位", align = 2, sort = 3)
    private String companyName;


    @ExcelField(title = "作业区域", align = 2, sort = 4)
    private String deptId;
    /**
     * 个人照片
     */
    @ExcelField(title = "个人照片", align = 2, sort = 5, isImg = true)
    private String photoUrl;

    /**
     * 健康证明
     */
    @ExcelField(title = "健康证明", align = 2, sort = 6, isImg = true)
    private String healthProofUrl;

    /**
     * 无犯罪记录证明
     */
    @ExcelField(title = "无犯罪记录证明", align = 2, sort = 7, isImg = true)
    private String noCriminalProofUrl;

    /**
     * 资质证明图片
     */
    @ExcelField(title = "资质证明图片", align = 2, sort = 8, isImg = true)
    private String certificatePhotosUrl;

    /**
     * 身份证号
     */
    @ExcelField(title = "身份证号", align = 2, sort = 9)
    private String idCard;

    /**
     * 入场时间
     */
    @ExcelField(title = "进场时间", align = 2, sort = 10)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date entryTime;

    /**
     * 离场时间
     */
    @ExcelField(title = "离场时间", align = 2, sort = 11)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date leaveTime;

    /**
     * 创建时间
     */
    @ExcelField(title = "申请时间", align = 2, sort = 12)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 考试结果
     */
    @ExcelField(title = "考试结果", align = 2, sort = 13)
    private String allPassTip;

    /**
     * 是否处于有效期
     */
    @ExcelField(title = "申请是否有效", align = 2, sort = 14)
    private String effectTip;

    /**
     * 状态
     */
    @ExcelField(title = "状态", align = 2, sort = 15)
    private String isApplyTip; // 0未通过 1通过 2失效

    /**
     * 证书内容
     */
    @ExcelField(title = "证书内容", align = 1, sort = 16, width = 40000)
    private String licenses;
}
